Method and apparatus for receiving plurality of data signals

ABSTRACT

A transmitter site transmits a plurality of different data signals at a chip rate over a shared spectrum in a code division multiple access communication system. Each transmitted data signal experiences a similar channel response. A combined signal of the transmitted data signals is received. The combined signal is sampled at a multiple of the chip rate. The channel response for the combined signal is determined. A spread data vector is determined using the combined signal samples and the estimated channel response. The data of the different data signals is determined using the spread data vector.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/185,878, filed Aug. 5, 2008, which is a continuation of U.S. patentapplication No. 11/530,919, filed on Sep. 12, 2006, now U.S. Pat. No.7,414,999, which is a continuation of U.S. patent application Ser. No.10/052,943, filed on Nov. 7, 2001, now U.S. Pat. No. 7,110,383, whichclaims priority to U.S. Provisional Patent Application No. 60/246,947,filed on Nov. 9, 2000, which applications are incorporated herein byreference.

BACKGROUND

The invention generally relates to wireless communication systems. Inparticular, the invention relates to data detection in a wirelesscommunication system.

FIG. 1 is an illustration of a wireless communication system 10. Thecommunication system 10 has base stations 12 ₁ to 12 ₅ (12) whichcommunicate with user equipments (UEs) 14 ₁ to 14 ₃ (14). Each basestation 12 has an associated operational area, where it communicateswith UEs 14 in its operational area.

In some communication systems, such as code division multiple access(CDMA) and time division duplex using code division multiple access(TDD/CDMA), multiple communications are sent over the same frequencyspectrum. These communications are differentiated by theirchannelization codes. To more efficiently use the frequency spectrum,TDD/CDMA communication systems use repeating frames divided into timeslots for communication. A communication sent in such a system will haveone or multiple associated codes and time slots assigned to it. The useof one code in one time slot is referred to as a resource unit.

Since multiple communications may be sent in the same frequency spectrumand at the same time, a receiver in such a system must distinguishbetween the multiple communications. One approach to detecting suchsignals is multiuser detection. In multiuser detection, signalsassociated with all the UEs 14, users, are detected simultaneously.Approaches for implementing multiuser detection include block linearequalization based joint detection (BLE-JD) using a Cholesky or anapproximate Cholesky decomposition. These approaches have a highcomplexity. The high complexity leads to increased power consumption,which at the UE 14 ₁ results in reduced battery life. Accordingly, it isdesirable to have alternate approaches to detecting received data.

SUMMARY

A code division multiple access user equipment is used in receiving aplurality of data signals over a shared spectrum. Each received datasignal experiences a similar channel response. A combined signal of thereceived data signals is received over the shared spectrum. The combinedsignal is sampled at a multiple of the chip rate. A channel response isestimated as a channel response matrix at the multiple of the chip rate.A padded version of a spread data vector of a size corresponding to themultiple chip rate using a column of the channel response matrix, theestimated channel response matrix, the samples and a fourier transform.The spread data vector is estimated by eliminating elements of thepadded version so that the estimated spread data vector is of a sizecorresponding to the chip rate.

BRIEF DESCRIPTION OF THE DRAWING(S)

FIG. 1 is a wireless communication system.

FIG. 2 is a simplified transmitter and a single user detection receiver.

FIG. 3 is an illustration of a communication burst.

FIG. 4 is a flow chart of an extended forward substitution approach tosingle user detection (SUD).

FIG. 5 is a flow chart of an approximate banded Cholesky approach toSUD.

FIG. 6 is a flow chart of a Toeplitz approach to SUD.

FIG. 7 is a flow chart of a fast fourier transform (FFT) approachapplied to the channel correlation matrix for SUD.

FIG. 8 is a flow chart of a FFT approach to SUD using effectivecombining.

FIG. 9 is a flow chart of a FFT approach to SUD using zero padding.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

FIG. 2 illustrates a simplified transmitter 26 and receiver 28 usingsingle user detection (SUD) in a TDD/CDMA communication system, althoughthe single user detection approaches are applicable to other systems,such as frequency division duplex (FDD) CDMA. In a typical system, atransmitter 26 is in each UE 14 and multiple transmitting circuits 26sending multiple communications are in each base station 12. The SUDreceiver 28 may be at a base station 12, UEs 14 or both. SUD istypically used to detect data in a single or multicode transmission froma particular transmitter. When all the signals are sent from the sametransmitter, each of the individual channel code signals in themulticode transmission experience the same channel impulse response. SUDis particularly useful in the downlink, where all transmissionsoriginate from a base station antenna or antenna array. It is alsouseful in the uplink, where a single user monopolizes a timeslot with asingle code or multicode transmission.

The transmitter 26 sends data over a wireless radio channel 30. A datagenerator 32 in the transmitter 26 generates data to be communicated tothe receiver 28. A modulation/spreading sequence insertion device 34spreads the data and makes the spread reference data time-multiplexedwith a midamble training sequence in the appropriate assigned time slotand codes for spreading the data, producing a communication burst orbursts.

A typical communication burst 16 has a midamble 20, a guard period 18and two data bursts 22, 24, as shown in FIG. 3. The midamble 20separates the two data fields 22, 24 and the guard period 18 separatesthe communication bursts to allow for the difference in arrival times ofbursts transmitted from different transmitters 26. The two data bursts22, 24 contain the communication burst's data.

The communication burst(s) are modulated by a modulator 36 to radiofrequency (RF). An antenna 38 radiates the RF signal through thewireless radio channel 30 to an antenna 40 of the receiver 28. The typeof modulation used for the transmitted communication can be any of thoseknown to those skilled in the art, such as quadrature phase shift keying(QPSK) or M-ary quadrature amplitude modulation (QAM).

The antenna 40 of the receiver 28 receives various radio frequencysignals. The received signals are demodulated by a demodulator 42 toproduce a baseband signal. The baseband signal is sampled by a samplingdevice 43, such as one or multiple analog to digital converters, at thechip rate or a multiple of the chip rate of the transmitted bursts. Thesamples are processed, such as by a channel estimation device 44 and aSUD device 46, in the time slot and with the appropriate codes assignedto the received bursts. The channel estimation device 44 uses themidamble training sequence component in the baseband samples to providechannel information, such as channel impulse responses. The channelimpulse responses can be viewed as a matrix, H. The channel informationis used by the SUD device 46 to estimate the transmitted data of thereceived communication bursts as soft symbols.

The SUD device 46 uses the channel information provided by the channelestimation device 44 and the known spreading codes used by thetransmitter 26 to estimate the data of the desired receivedcommunication burst(s). Although SUD is explained using the thirdgeneration partnership project (3GPP) universal terrestrial radio access(UTRA) TDD system as the underlying communication system, it isapplicable to other systems. That system is a direct sequence widebandCDMA (W-CDMA) system, where the uplink and downlink transmissions areconfined to mutually exclusive time slots.

The receiver 28 receives using its antenna 40 a total of K bursts thatarrive simultaneously, 48. The K bursts are superimposed on top of eachother in one observation interval. For the 3GPP UTRA TDD system, eachdata field of a time slot corresponds to one observation interval.

For one observation interval, the data detection problem is viewed asper Equation 1.

r=H·d+n   Equation 1

r is the received samples. H is the channel response matrix. d is thespread data vector. The spread data matrix contains the data transmittedin each channel mixed with that channel's spreading code.

When the received signal is oversampled, multiple samples of eachtransmitted chip are produced resulting in received vectors, r₁, . . . ,r_(N), (48). Similarly, the channel estimation device 44 determines thechannel responses, H₁, . . . , H_(N), corresponding to the receivedvectors, r₁, . . . , r_(N) , (50). For twice the chip rate, Equation 1becomes Equation 2.

$\begin{matrix}{\begin{bmatrix}r_{1} \\r_{2}\end{bmatrix} = {{\begin{bmatrix}H_{1} \\H_{2}\end{bmatrix} \cdot d} + n}} & {{Equation}\mspace{14mu} 2}\end{matrix}$

r₁ is the even samples (at the chip rate) and r₂ is the odd samples(offset half a chip from the r₁ samples). H₁ is the channel response forthe even samples and H₂ is the channel response for the odd samples.

Equation 1 becomes Equation 3 for a multiple N of the chip rate.

$\begin{matrix}{\begin{bmatrix}r_{1} \\r_{2} \\\vdots \\r_{N}\end{bmatrix} = {{\begin{bmatrix}H_{1} \\H_{2} \\\vdots \\H_{N}\end{bmatrix} \cdot d} + n}} & {{Equation}\mspace{14mu} 3}\end{matrix}$

r₁, r₂ . . . r_(N) are the multiple of the chip rate samples. Eachoffset by 1/N of a chip. H₁, H₂ . . . H_(N) are the correspondingchannel responses. Although the following discussion focuses on areceiver sampling at twice the chip rate, the same approaches areapplicable to any multiple of the chip rate.

For twice the chip rate sampling, matrices H₁ and H₂ are (N_(S)+W−1) byN_(S) in size. N_(S) is the number of spread chips transmitted in theobservation interval and W is the length of the channel impulseresponse, such as 57 chips in length. Since the received signal hasN_(S) spread chips, the length of r₁ and r₂ is N_(S). Equation 2 isrewritten as Equation 4.

$\left. \mspace{675mu} {{{Equation}\mspace{14mu} 4}\begin{matrix}{r_{1}(0)} \\{r_{1}(1)} \\ \\{r_{1}\left( {W - 1} \right)} \\\; \\{r_{1}\left( {N_{s} - 1} \right)} \\\ldots \\\; \\{r_{2}(0)} \\{r_{2}(1)} \\ \\{r_{2}\left( {W - 1} \right)} \\\; \\{r_{2}\left( {N_{s} - 1} \right)}\end{matrix}} \right\rbrack = {\quad{{\left\lbrack \begin{matrix}{h_{1}(0)} & 0 & 0 & \ldots & \ldots & \ldots & \ldots & \ldots \\{h_{1}(1)} & {h_{1}(0)} & 0 & \ldots & \; & \; & \; & \; \\ &  & \; & \; & \; & \; & \; & \; \\{h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & \ldots & \ldots & {h_{1}(1)} & {h_{1}(0)} & 0 & 0 \\ &  & \; & \; &  &  &  &  \\0 & 0 & \ldots & {h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & \ldots & {h_{1}(1)} & {h_{1}(0)} \\\ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots \\{h_{2}(0)} & 0 & 0 & \ldots & \ldots & \ldots & \ldots & \ldots \\{h_{2}(1)} & {h_{2}(0)} & 0 & \ldots & \; & \; & \; & \; \\ &  & \; & \; & \; & \; & \; & \; \\{h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & \ldots & \ldots & {h_{2}(1)} & {h_{2}(0)} & 0 & 0 \\ &  & \; & \; &  &  &  &  \\0 & 0 & \ldots & {h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & \ldots & {h_{2}(1)} & {h_{2}(0)} \\\ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots\end{matrix} \right\rbrack  \cdot d} + n}}$

r₁(i), r₂(i), h₁(i) and h₂(i) is the i^(th) element of the correspondingvector matrix r₁, r₂, H₁ and H₂, respectively.

One approach to determine the spread data vector is extended forwardsubstitution, which is explained in conjunction with FIG. 4. Forextended forward substitution, the received data vector is rearranged sothat each even sample is followed by its corresponding odd sample. Asimilar rearrangement is performed on the channel response matrix, asshown in Equation 5a.

$\left. \mspace{661mu} {{{Equation}\mspace{14mu} 5a}\begin{matrix}{r_{1}(0)} \\{r_{2}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\ \\{r_{1}\left( {W - 1} \right)} \\{r_{2}\left( {W - 1} \right)} \\{\; } \\{r_{1}\left( {N_{S} - 1} \right)} \\{r_{2}\left( {N_{S} - 1} \right)}\end{matrix}} \right\rbrack = {\quad{\left\lbrack \begin{matrix}{h_{1}(0)} & 0 & 0 & \ldots & \; & \; & \; & \; \\{h_{2}(0)} & 0 & 0 & \ldots & \; & \; & \; & \; \\{h_{1}(1)} & {h_{1}(0)} & 0 & \ldots & \; & \; & \; & \; \\{h_{2}(1)} & {h_{2}(0)} & 0 & \ldots & \; & \; & \; & \; \\ &  &  & \ldots & \; & \; & \; & \; \\{h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & \ldots & \ldots & {h_{1}(1)} & {h_{1}(0)} & 0 & 0 \\{h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & \ldots & \ldots & {h_{2}(1)} & {h_{2}(0)} & 0 & 0 \\{\; } & {\; } & \; & \; &  &  &  &  \\0 & 0 & \ldots & {h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & \ldots & {h_{1}(1)} & {h_{1}(0)} \\0 & 0 & \ldots & {h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & \ldots & {h_{2}(1)} & {h_{2}(0)}\end{matrix} \right\rbrack  \cdot {\quad{\begin{bmatrix}{d(0)} \\{d(1)} \\ \\ \\{d\left( {N_{S} - 1} \right)}\end{bmatrix} + n}}}}$

Similarly, for an N-multiple of the chip rate sampling, Equation 5b isthe arrangement.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\ \\{r_{N}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\ \\{{r_{N}(1)}\;} \\ \\{r_{1}\left( {N_{S} - 1} \right)} \\{r_{2}\left( {N_{S} - 1} \right)} \\ \\{r_{N}\left( {N_{S} - 1} \right)}\end{bmatrix} = {\quad{{\left\lbrack \begin{matrix}{h_{1}(0)} & 0 & \ldots & 0 & 0 \\{h_{2}(0)} & 0 & \ldots & 0 & 0 \\ &  & \ldots &  &  \\{h_{N}(0)} & 0 & \ldots & 0 & 0 \\{h_{1}(1)} & {h_{1}(0)} & \ldots & 0 & 0 \\{h_{2}(1)} & {h_{2}(0)} & \ldots & 0 & 0 \\ &  & \ldots &  &  \\{\; {h_{N}(1)}} & {h_{N}(0)} & \ldots & 0 & 0 \\ &  & \ldots &  &  \\0 & 0 & \ldots & {h_{1}(1)} & {h_{1}(0)} \\0 & 0 & \ldots & {h_{2}(1)} & {h_{2}(0)} \\ &  & \ldots &  &  \\0 & 0 & \ldots & {h_{N}(1)} & {h_{N}(0)}\end{matrix} \right\rbrack \cdot \left\lbrack \begin{matrix}{d(0)} \\{d(1)} \\ \\ \\{d\left( {N_{S} - 1} \right)}\end{matrix} \right\rbrack} + n}}} & {{Equation}\mspace{14mu} 5b}\end{matrix}$

d(i) is the i^(th) element of the spread data vector, d. The length ofthe spread data vector is N_(S). Using extended forward substitution,the zero-forcing solution to determine d(0), d̂(0), is per Equations 6aand 7a, (52).

$\begin{matrix}{{\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix} \cdot {d(0)}} = \begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}} & {{Equation}\mspace{14mu} 6a} \\{{d^{\bigwedge}(0)} = {{\left\{ {\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack \begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}} \right\}^{- 1}\begin{bmatrix}{h_{1}(0)} & {h_{2}(0)}\end{bmatrix}}\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}}} & {{Equation}\mspace{14mu} 7a}\end{matrix}$

Equation 6a is the general formula for d(0) . Equation 7a is the zeroforcing solution for d̂(0). Similarly, for N-multiple of the chip rate,Equations 6b and 7b are used.

$\begin{matrix}{\mspace{79mu} {\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)} \\| \\{h_{N}(0)}\end{bmatrix}{{d(0)}\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\| \\{r_{N}(0)}\end{bmatrix}}}} & {{Equation}\mspace{14mu} 6b} \\{{\hat{d}(0)} = {{\left\{ {\left\lbrack {{h_{1}(0)}\mspace{14mu} \ldots \mspace{14mu} {h_{N}(0)}} \right\rbrack \begin{bmatrix}{h_{1}(0)} \\\vdots \\{h_{N}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}\mspace{14mu} \ldots \mspace{14mu} {h_{N}(0)}} \right\rbrack}\begin{bmatrix}{r_{1}(0)} \\\vdots \\{r_{N}(0)}\end{bmatrix}}} & {{Equation}\mspace{14mu} 7b}\end{matrix}$

In solving Equations 7a and 7b, for later use v^(H) is determined asillustrated by Equation 8 for the v^(H) for Equation 7a and stored,(52).

$\begin{matrix}{v^{H} = {\left\{ {\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack \begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack}} & {{Equation}\mspace{14mu} 8}\end{matrix}$

d̂(0) is determined using v^(H) per Equation 9.

$\begin{matrix}{{d^{\hat{}}(0)} = {v^{H}\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}}} & {{Equation}\mspace{14mu} 9}\end{matrix}$

Using the Toeplitz structure of the H matrix, the remaining spread dataelements can be determined sequentially using zero forcing per Equation10a, (54).

$\begin{matrix}{{d^{\;\hat{}}(i)} = {v^{H}\begin{Bmatrix}{\begin{bmatrix}{r_{1}(i)} \\{r_{2}(i)}\end{bmatrix} - {\begin{bmatrix}{h_{1}(i)} \\{h_{2}(i)}\end{bmatrix}d^{\hat{}}(0)} +} \\{\sum\limits_{j = 1}^{i - 1}{{- \begin{bmatrix}{h_{1}(j)} \\{h_{2}(j)}\end{bmatrix}}{d^{\hat{}}\left( {i - j - 1} \right)}}}\end{Bmatrix}}} & {{Equation}\mspace{14mu} 10a}\end{matrix}$

For an N-multiple of the chip rate, Equation 10b is used.

$\begin{matrix}{{d^{\;\hat{}}(i)} = {v^{H}\left\{ {\begin{bmatrix}{r_{1}(i)} \\| \\{r_{N}(i)}\end{bmatrix} - {\begin{bmatrix}{h_{1}(i)} \\| \\{h_{N}(i)}\end{bmatrix}{\hat{d}(0)}} - {\sum\limits_{j = 1}^{i - 1}{\begin{bmatrix}{h_{1}(j)} \\| \\{h_{N}(j)}\end{bmatrix} \cdot {d\left( {i - j - 1} \right)}}}} \right.}} & {{Equation}\mspace{14mu} 10b}\end{matrix}$

After the spread data vector is determined, each communication burst'sdata is determined by despreading, such as by mixing the spread datavector with each burst's code, (56).

The complexity in using the extended forward substitution approach,excluding despreading, is summarized in Table 1.

TABLE 1 Calculating v^(H) 4 multiplications & 1 reciprocal Calculatingd{circumflex over ( )}(0) 2 multiplications Calculating d{circumflexover ( )}(1) 4 multiplications Calculating each up to d{circumflex over( )}(W − 1) 2 multiplications Calculating each d{circumflex over ( )}(i)from 2W + 2 multiplications d{circumflex over ( )}(w) to d{circumflexover ( )}(N_(S) − 1) Total Number of Multiplications 2N_(S) + (W − 1) ·W + 2W . . . (N_(S) − W + 1) Total Number of Calculations 2N_(S) + (W− 1) · W + 2W . . . (N_(S) − W + 1) + 5

For a TDD burst type II, N_(S) is 1104 and W is 57, solving for d usingextended forward substitution 200 times per second requires 99.9016million real operations per second (MROPS) for twice the chip ratesampling or 49.95 MROPS for chip rate sampling.

Another approach to estimate data is an approximate banded Choleskyapproach, which is explained in conjunction with FIG. 5. A crosscorrelation matrix R is determined so that it is square, (N_(S) byN_(S)), and banded per Equation 11, (58).

R=H ^(H) H   Equation 11

(·)^(H) indicates the Hermitian function. H is of size 2(N_(S)+W−1) byN_(S). Equation 11 is rewritten as Equation 12a for twice the chip ratesampling.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H}H_{2}^{H}} \right\rbrack \cdot \begin{bmatrix}{H\; 1} \\{H\; 2}\end{bmatrix}} = {{H_{1}^{H}H_{1}} + {H_{2}^{H}H_{2}}}}} & {{Equation}\mspace{14mu} 12a}\end{matrix}$

For an N-multiple of the chip rate, Equation 12b is used.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H},{{H_{2}^{H}--}\mspace{14mu} H_{N}^{H}}} \right\rbrack \begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}}\mspace{14mu} {or}\mspace{14mu} R{\underset{\mspace{50mu} {i = 1}}{\overset{\mspace{40mu} N}{= \sum}}{H_{i}^{H}H_{i}}}}} & {{Equation}\mspace{14mu} 12b}\end{matrix}$

Using Equation 12a or 12b, the resulting R is of size N_(S) by N_(S) andbanded as illustrated in Equation 13 for twice the chip rate sampling,W=3 and N_(S)=10.

$\begin{matrix}{R = \begin{bmatrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 \\R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 \\0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 \\0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 \\0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 \\0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} \\0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0}\end{bmatrix}} & {{Equation}\mspace{14mu} 13}\end{matrix}$

In general, the bandwidth of R is per Equation 14.

p=W−1   Equation 14

Using an approximate Cholesky approach, a sub-block of R, R_(sub), ofsize N_(col) by N_(col) is used. A typical size of R_(sub) is 2W−1 by2W−1, although other sized matrices may be used. The sub-block, R_(sub),is decomposed using Cholesky decomposition per Equation 15, (60).

R _(sub) =GG ^(H)   Equation 15

The Cholesky factor G is of size N_(col) by N_(col). An illustration ofa 5×5 G matrix with W=3 is per Equation 16.

$\begin{matrix}{G = \begin{bmatrix}G_{11} & 0 & 0 & 0 & 0 \\G_{21} & G_{22} & 0 & 0 & 0 \\G_{31} & G_{32} & G_{33} & 0 & 0 \\0 & G_{42} & G_{43} & G_{44} & 0 \\0 & 0 & G_{53} & G_{54} & G_{55}\end{bmatrix}} & {{Equation}\mspace{14mu} 16}\end{matrix}$

G_(ij) is the element of the G matrix at the i^(th) column and j^(th)row. The G matrix is extended to an N_(S) by N_(S) matrix, G_(full), byright shifting the bottom row of G by one element for each row after thelast row of G, (62). For N_(S)=10, the illustration of Equation 16 isexpanded per Equation 17, (62).

                                 Equation  17$G_{full} = \begin{bmatrix}G_{11} & 0 & \; & \; & \; & \; & \; & \; & \; & \; \\G_{21} & G_{22} & 0 & \; & \; & \; & \; & \; & \; & \; \\G_{31} & G_{32} & G_{33} & 0 & \; & \; & \; & \; & \; & \; \\0 & G_{42} & G_{43} & G_{44} & 0 & \; & \; & \; & \; & \; \\\; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; & \; & \; & \; \\\; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; & \; & \; \\\; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; & \; \\\; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; \\\; & \; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 \\\; & \; & \; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55}\end{bmatrix}$

The spread data vector is determined using forward and backwardsubstitution, (64). Forward substitution is used to determine y perEquation 18a for twice the chip rate sampling and Equation 18b for amultiple N of the chip rate sampling.

G _(full) y=H ₁ ^(H) r ₁ +H ₂ ^(H) r ₂  Equation 18a

G _(full) y=H ₁ ^(H) r ₁ +H ₂ ^(H) r ₂ + . . . +H _(N) ^(H) r_(N)  Equation 18b

Backward substitution is subsequently used to solve for the spread datavector per Equation 19.

G _(full) ^(H) d=y   Equation 19

After the spread data vector, d, is determined, each burst's data isdetermined by despreading, (66).

The complexity of approximate Cholesky decomposition, excludingdespreading, for twice the chip rate sampling is per Table 2.

TABLE 2 Operation Number of Calculations Calculating H^(H)H W(W + 1)Calculating Cholesky Decomposition$\frac{{N_{col}\left( {W - 1} \right)}^{2}}{2} + \frac{3\; {N_{col}\left( {W - 1} \right)}}{2} - \frac{\left( {W - 1} \right)^{3}}{3} - \left( {W - 1} \right)^{2} - \frac{2\left( {W - 1} \right)}{3}$Calculating H^(H)r 2N_(S)W Forward Substitution$\underset{{real}\mspace{14mu} {numbers}}{{\left\lbrack {N_{S} - \frac{\left( {W - 1} \right)}{2}} \right\rbrack W}\mspace{11mu}}\; {and}\mspace{14mu} {the}\mspace{14mu} {reciprocal}\mspace{14mu} {of}\mspace{14mu} N_{S}$Backward Substitution$\underset{{real}\mspace{14mu} {numbers}}{{\left\lbrack {N_{S} - \frac{\left( {W - 1} \right)}{2}} \right\rbrack W}\mspace{11mu}}\; {and}\mspace{14mu} {the}\mspace{14mu} {reciprocal}\mspace{14mu} {of}\mspace{14mu} N_{S}$

For a TDD burst type II, N_(S) is 1104 and for W is 57, performingapproximate banded Cholesky 200 times per second at twice the chip raterequires 272.56 MROPS. By contrast, an exact banded Cholesky approachrequires 906.92 MROPS. For chip rate sampling, the approximate bandedCholesky approach requires 221.5 MROPS.

Another approach for data detection uses a Toeplitz approach,(Levinson-Durbin type algorithm), which is explained in conjunction withFIG. 6. The R matrix of Equation 12a and 12b is reproduced here.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H}H_{2}^{H}} \right\rbrack \cdot \begin{bmatrix}{H\; 1} \\{H\; 2}\end{bmatrix}} = {{H_{1}^{H}H_{1}} + {H_{2}^{H}H_{2}}}}} & {{Equation}\mspace{14mu} 12a}\end{matrix}$

For an N-multiple of the chip rate, Equation 12b is used.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H},{{H_{2}^{H}--}\mspace{14mu} H_{N}^{H}}} \right\rbrack \begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}}\mspace{14mu} {or}\mspace{14mu} R{\underset{\mspace{45mu} {i = 1}}{\overset{\mspace{45mu} N}{= \sum}}{H_{i}^{H}H_{i}}}}} & {{Equation}\mspace{14mu} 12b}\end{matrix}$

The R matrix is symmetric and Toeplitz with a bandwidth of p=W−1, (68).A left most upper corner of the R matrix, R(k), being a k by k matrix isdetermined as shown in Equation 20.

$\begin{matrix}{{R(k)} = \begin{bmatrix}R_{0} & R_{1} & \ldots & R_{k - 1} \\R_{1} & R_{0} & \ddots & \vdots \\R_{k - 1} & R_{k - 2} & \ldots & R_{0}\end{bmatrix}} & {{Equation}\mspace{14mu} 20}\end{matrix}$

Additionally, another vector R_(k) is determined using elements of R,per Equation 21, (72).

$\begin{matrix}{R_{k} = {\begin{bmatrix}R_{1} \\R_{2} \\\vdots \\R_{k}\end{bmatrix}.}} & {{Equation}\mspace{14mu} 21}\end{matrix}$

Bolding indicates a matrix including all elements up to its subscript.At stage k+1, the system is solved per Equation 22.

R(k+1)d(k+1)=[H ^(H) r]_(k+1)  Equation 22

[H^(H)r]_(k+1) is the first (k+1) components of H^(H)r . d(k+1) isbroken into a vector d₁(k+1) of length k and a scalar d₂(k+1) as perEquation 23.

$\begin{matrix}{{d\left( {k + 1} \right)} = {\begin{bmatrix}{d_{1}\left( {k + 1} \right)} \\{d_{2}\left( {k + 1} \right)}\end{bmatrix} \cdot}} & {{Equation}\mspace{14mu} 23}\end{matrix}$

The matrix R(k+1) is decomposed as per Equation 24.

$\begin{matrix}{{R\left( {k + 1} \right)} = {\begin{bmatrix}{R(k)} & \vdots & {E_{k}R_{k}} \\\ldots & \vdots & \ldots \\{R_{k}^{H}E_{k}} & \vdots & R_{0}\end{bmatrix}.}} & {{Equation}\mspace{14mu} 24}\end{matrix}$

E_(k) is an exchange matrix. The exchange matrix operates on a vector byreversing that vector's elements.

Using the Yule-Walker equation for linear prediction, Equation 25results, (78).

$\begin{matrix}{{\begin{bmatrix}{R\left( {k - 1} \right)} & \vdots & {E_{k - 1}R_{k - 1}} \\\ldots & \vdots & \ldots \\{R_{k - 1}^{H}E_{k - 1}} & \vdots & R_{0}\end{bmatrix}\begin{bmatrix}{y_{1}(k)} \\{y_{2}(k)}\end{bmatrix}} = {- \begin{bmatrix}R_{k - 1} \\R_{k}\end{bmatrix}}} & {{Equation}\mspace{14mu} 25}\end{matrix}$

Using order recursions, Equations 26, 27 and 28 result.

$\begin{matrix}{{y_{1}(k)} = {{y\left( {k - 1} \right)} + {{y_{2}(k)}E_{k - 1}{y\left( {k - 1} \right)}}}} & {{Equation}\mspace{14mu} 26} \\{{y_{2}(k)} = {- \frac{\left\lbrack {R_{k} + {R_{k - 1}^{H}E_{k - 1}{y\left( {k - 1} \right)}}} \right\rbrack}{\left\lbrack {1 + {R_{k - 1}^{H}{y\left( {k - 1} \right)}}} \right\rbrack}}} & {{Equation}\mspace{14mu} 27} \\{{y(k)} = \begin{bmatrix}{y_{1}(k)} \\{y_{2}(k)}\end{bmatrix}} & {{Equation}\mspace{14mu} 28}\end{matrix}$

Using y(k), d(k+1) is determined per Equations 29, 30 and 31, (74).

$\begin{matrix}{{d_{1}\left( {k + 1} \right)} = {{d(k)} + {{d_{2}\left( {k + 1} \right)}E_{k}{y(k)}}}} & {{Equation}\mspace{14mu} 29} \\{{d_{2}\left( {k + 1} \right)} = \left\lbrack \frac{\left( {H^{H}r} \right)_{k + 1} - {R_{k}^{H}E_{k}{d(k)}}}{1 + {R_{k}^{H}{y(k)}}} \right\rbrack} & {{Equation}\mspace{14mu} 30} \\{{d\left( {k + 1} \right)} = \begin{bmatrix}{d_{1}\left( {k + 1} \right)} \\{d_{2}\left( {k + 1} \right)}\end{bmatrix}} & {{Equation}\mspace{14mu} 31}\end{matrix}$

(H^(H)r)_(k+1) is the (k+1)^(th) element of H^(H)r.

After properly initializing the recursions, the recursions are computedfor k=1, 2, . . . , N_(S). d(N_(S)) is a solution to Equation 32, (74).

Rd=H ^(H) r  Equation 32

The spread data vector d is despread with the bursts' channelizationcodes to recover the data, (76).

The banded structure of R affects the recursions as follows. R(2) and R₂are per Equation 33.

$\begin{matrix}{{{R(2)} = \begin{bmatrix}R_{0} & R_{1} \\{R_{1}\;} & R_{0}\end{bmatrix}},{R_{2} = \begin{bmatrix}R_{1} \\R_{2}\end{bmatrix}}} & {{Equation}\mspace{14mu} 33}\end{matrix}$

The inner product calculations in Equations 27 and 30 require twomultiplications each. To illustrate, the R matrix of Equation 20 for k=6is per Equation 34.

$\begin{matrix}{{{R(6)} = \begin{bmatrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\R_{1} & \; & \; & R_{2} & 0 & 0 \\R_{2} & \; & \; & \; & R_{2} & 0 \\0 & R_{2} & \; & \; & \; & R_{2} \\0 & 0 & R_{2} & \; & \; & R_{1} \\0 & 0 & 0 & R_{2} & \; & R_{0}\end{bmatrix}},{R_{6} = \begin{bmatrix}R_{1} \\R_{2} \\0 \\0 \\0 \\0\end{bmatrix}}} & {{Equation}\mspace{14mu} 34}\end{matrix}$

The number of non-zero elements in the vector R₆ is equal to thebandwidth, p, of the matrix R. When the inner product of R₆ ^(H)E₆y(k)in Equation 27 and the inner product R₆ ^(H)E₆d(k) in Equation 30 arecalculated, only p (and not k) multiplications are required. For therecursions of Equations 26 and 29, no computational reductions areobtained.

Table 3 shows the complexity in implementing the Toeplitz approach.

TABLE 3 Calculation # of Calculations MROPS Functions Executed Once PerBurst Calculating H^(H)H  1.3224 Solving Yule-Walker for y$672,888 \times \frac{100}{10^{6}}$ 269.1552 Functions Executed TwicePer Burst Calculating H^(H)r 100.68 Solving R(k + 1)d(k + l)H^(H)r$672,888 \times \frac{200}{10^{6}}$ 538.3104The total MROPS for the Toeplitz approach for a TDD burst type is909.4656 MROPS for twice the chip rate sampling and 858.4668 MROPS forchip rate sampling.

Another approach for data detection uses fast fourier transforms (FFTs),which is explained using FIG. 7. If chip rate sampling is used, thechannel matrix H is square except for edge effects. Using a circulantapproximation for the H matrix, a FFT of the received vector, r, and thechannel vector, H, to obtain the data estimate is used.

For a multiple of the chip rate sampling, such as twice the chip rate,the H matrix is not square or circulant. However, a submatrix, shown bydotted lines, of the channel correlation matrix R=H^(H) H matrix ofEquation 13, (84), as shown for Equation 35a is circulant.

$\begin{matrix}{R = \begin{bmatrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 \\\ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots \\R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 \\0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2\;} & 0 & 0 & 0 & 0 \\0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1\;} & R_{2} & 0 & 0 \\0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 \\0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} \\\ldots & \ldots & \ldots & \ldots & \ldots & \ldots & \ldots & {\ldots\ldots} & \ldots & \ldots \\0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0}\end{bmatrix}} & {{Equation}\mspace{14mu} 35a}\end{matrix}$

For an N-multiple of the chip rate sampling, the channel correlationmatrix is determined per Equation 35b.

$\begin{matrix}{R = {{\left\lbrack {H_{1\;}^{H}{H_{2}^{H}--}H_{N}^{H}} \right\rbrack \begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}} = {\sum\limits_{i - 1}^{N}{H_{i}^{N}H_{i}}}}} & {{Equation}\mspace{14mu} 35b}\end{matrix}$

By approximating the R matrix as being circulant, Equations 36, 37 and38 are used.

$\begin{matrix}{{R^{H} = {D\; \Delta \; D^{H}}}{\Delta = {{diag}\left( {D(R)}_{1} \right)}}} & {{Equation}\mspace{14mu} 36} \\{d^{\bigwedge} = {{diag}\left( {D\begin{bmatrix}R_{0} \\R_{1} \\R_{2} \\0 \\\vdots \\0\end{bmatrix}} \right)}} & {{Equation}\mspace{14mu} 37}\end{matrix}$

(R)₁ is the first column of the R matrix expanded to a diagonal matrix.Although described using the first column, this approach can be modifiedto use any column of the R matrix, (86). However, it is preferred to usea column having the most non-zero elements of any column, such as R₂,R₁, R₀, R₁, R₂. These columns are typically any column at least Wcolumns from both sides, such as any column between and including W andN_(S)−W−1. Equations 38 and 39 are used in a zero-forcing equalizationapproach.

Rd̂=H ^(H) r   Equation 38

d̂=R ⁻¹(H ^(H) r)  Equation 39

Since D is an orthogonal discrete fourier transform (DFT) matrix,Equations 40, 41 and 42 result.

$\begin{matrix}{{D^{H}D} = {N_{S}I}} & {{Equation}\mspace{14mu} 40} \\{D^{- 1} = {\left( {1/N_{S}} \right)D^{H}}} & {{Equation}\mspace{14mu} 41} \\{R^{- 1} = {\frac{1}{N_{S}}D^{H}\Delta^{- 1}\frac{1}{N_{S}}D}} & {{Equation}\mspace{14mu} 42}\end{matrix}$

Accordingly, d̂ can be determined using a fourier transform per Equations43, 44 and 45a.

$\begin{matrix}{R^{- 1} = {\frac{1}{N_{S}^{2}}D^{H}{\Delta^{- 1}\left\lbrack {D\left( {H^{H}r} \right)} \right\rbrack}}} & {{Equation}\mspace{14mu} 43} \\{{D^{H}d^{\bigwedge}} = {\frac{1}{N_{S}}{\Delta^{- 1}\left\lbrack {F\left( {H^{H}r} \right)} \right\rbrack}}} & {{Equation}\mspace{14mu} 44} \\{{F\left( d^{\bigwedge} \right)} = \frac{F\left( {H^{H}r} \right)}{N_{S}{F\left( (R)_{1} \right)}}} & {{Equation}\mspace{14mu} 45a}\end{matrix}$

(·)₁ is the first column, although an analogous equation can be used forany column of R. F(·) denotes a fourier transform function. F(H^(H)r) ispreferably calculated using FFTs per Equation 45b.

F(H ^(H) r)=N _(c) [F(h ₁)F(r ₁)+ . . . +F(h _(N))F(r _(N))]  Equation45b

Taking the inverse fourier transform F⁻¹(·), of the result of Equation45a produces the spread data vector, (88). The transmitted data can berecovered by despreading using the appropriate codes, (90).

The complexity of this FFT approach is shown in Table 4.

TABLE 4 Functions Executed Once Per Burst Calculation # of CalculationsMROPS Calculating H^(H)H  1.3224 F([R]₁) · N_(s)log₂N_(S)$11160 \times \frac{100}{10^{6}}$  4.4640 Functions Executed Twice PerBurst Calculating H^(H)r by FFT 38 Calculating Equation 45  0.8832F⁻¹(d) · N_(S)log₂N_(S)  8.9280 Total 55 MROPS

The FFT approach is less complex than the other approaches. However, aperformance degradation results from the circulant approximation.

Another approach to use FFTs to solve for the data vector for a multipleof the chip rate sampling combines the samples by weighing, as explainedusing FIG. 8. To illustrate for twice the chip rate sampling, r₁ is theeven and r₂ is the odd samples. Each element of r₁, such as a firstelement r₁(0), is weighted and combined with a corresponding element ofr₂, such as r₂(0) per Equation 46.

r _(eff)(0)=W ₁ r ₁(0)+W₂ r ₂(0)  Equation 46

r_(eff)(0) is the effectively combined element of an effectivelycombined matrix, r_(eff). W₁ and W₂ are weights. For N-times the chiprate sampling, Equation 47 is used.

r _(eff)(0)=W ₁ r ₁(0)+ . . . +W _(n) r _(n)(0)  Equation 47

Analogous weighting of the channel response matrices, H₁ to H_(n), isperformed to produce H_(eff), (92). As a result, Equation 3 becomesEquation 48.

r _(eff) =H _(eff) d+n  Equation 48

The resulting system is an N_(S) by N_(S) system of equations readilysolvable by FFTs per Equation 49, (94).

$\begin{matrix}{{F(d)} = \frac{F\left( r_{eff} \right)}{F\left( \left( H_{eff} \right)_{1} \right)}} & {{Equation}\mspace{14mu} 49}\end{matrix}$

Using the inverse fourier transform, the spread data vector isdetermined. The bursts' data is determined by despreading the spreaddata vector using the bursts' code, (96). Although Equation 49 uses thefirst column of H_(eff), the approach can be modified to use anyrepresentative column of, H_(eff).

Another approach using FFTs uses zero padding, which is explained usingFIG. 9. Equation 5 is modified by zero padding the data vector so thatevery other element, such as the even elements are zero, (98). Themodified d matrix is d{tilde over ( )}. The H matrix is also expanded toform H{tilde over ( )}. H matrix is expanded by repeating each column tothe right of that column and shifting each element down one row and zeropadding the top of the shifted column. An illustration of such a systemfor twice the chip rate sampling, W=3 and N_(S)=4 is per Equation 49a.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\{r_{1}(2)} \\{r_{2}(2)} \\{r_{1}(3)} \\{r_{2}(3)}\end{bmatrix} = {{\begin{bmatrix}{h_{1}(0)} & \; & \; & \; & \; & \; & \; & \; \\{h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; & \; & \; \\{h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; & \; \\{h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; \\{h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} & \; & \; \\{h_{1}(2)} & {h_{2}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} & \; \\0 & {h_{2}(2)} & {h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} \\0 & 0 & {h_{2}(2)} & {h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2\;}(0)} & {h_{1}(0)}\end{bmatrix} \cdot \begin{bmatrix}{d(0)} \\0 \\{d(1)} \\0 \\{d(2)} \\0 \\{d(3)} \\0\end{bmatrix}} + n}} & {{Equation}\mspace{14mu} 49a}\end{matrix}$

For an N-multiple of the chip rate, Equation 49b is used as shown forsimplicity for N_(S)=3.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\| \\{r_{N}(0)} \\{r_{1}(0)} \\{r_{2}(1)} \\| \\{r_{N}(1)} \\{r_{1}(2)} \\{r_{2}(2)} \\| \\{r_{N - 1}(2)} \\{r_{N}(2)}\end{bmatrix} = {{\begin{bmatrix}{h_{1}(0)} & 0 & -- & 0 \\{h_{2}(0)} & {h_{1}(0)} & -- & - \\| & | & -- & | \\{h_{N}(0)} & {h_{N - 1}(0)} & -- & 0 \\{h_{1}(1)} & {h_{N}(0)} & -- & 0 \\{h_{2}(1)} & {h_{1}(1)} & -- & 0 \\| & | & -- & | \\{h_{N}(1)} & {h_{N - 1}(1)} & -- & 0 \\0 & {h_{N}(1)} & -- & 0 \\0 & 0 & -- & 0 \\| & | & -- & | \\0 & 0 & -- & {h_{2}(0)} \\0 & 0 & -- & {h_{1}(0)}\end{bmatrix} \cdot \begin{bmatrix}{d(0)} \\0 \\| \\0 \\0 \\{d(1)} \\0 \\0 \\| \\0 \\{d(2)} \\0 \\| \\0 \\0\end{bmatrix}} + n}} & {{Equation}\mspace{14mu} 49b}\end{matrix}$

In general, the H{tilde over ( )} matrix for an N multiple is (N N_(S))by (N N_(S)). The matrix H{tilde over ( )} is square, Toeplitz andapproximately circulant and is of size 2N_(S) by 2N_(S). The zeroforcing solution is per Equation 50, (100).

$\begin{matrix}{{F\left( d^{\sim} \right)} = \frac{F(r)}{F\left( \left( H^{\sim} \right)_{1} \right)}} & {{Equation}\mspace{14mu} 50}\end{matrix}$

A column other than the first column may be used in an analogous FFT.Furthermore, since any column may be used, a column from the originalchannel response matrix, H or an estimated expanded column of theH{tilde over ( )} derived from a column of H. Using every N^(th) valuefrom d{tilde over ( )} , d is estimated. Using the appropriate codes, dis despread to recover the data, (102).

1. A method of processing code division multiple access communicationscomprising: receiving over a shared spectrum a signal in a timeslot thatincludes a plurality of superimposed bursts that had been transmitted ata chip rate where each burst includes data associated with a respectivespreading code; sampling the signal at a multiple of the chip rate toproduce signal samples; estimating a channel response for the signal atthe multiple of the chip rate; determining a spread data vector usingthe signal samples and the estimated channel response; and estimatingdata of each burst using the spread data vector and the respectivespreading codes.
 2. The method of claim 1 wherein the determining of aspread data vector includes: determining a first element of a spreaddata vector using the signal samples and the estimated channel response;and using a factor from the first element determination to determineremaining elements of the spread data vector.
 3. The method of claim 1wherein the data estimating is by despreading the spread data vector. 4.The method of claim 1 wherein the determining of a spread data vectorincludes: determining a cross correlation matrix using the estimatedchannel response; selecting a subblock of the cross correlation matrix;determining a Cholesky factor for the subblock; extending the Choleskyfactor; and determining the spread data vector using the extendedCholesky factor, a version of the channel response and the signalsamples.
 5. The method of claim 1 wherein the determining of a spreaddata vector includes: determining a cross correlation matrix using theestimated channel response; and determining the spread data vector usingorder recursions by determining a first spread data estimate using anelement from the cross correlation matrix and recursively determiningfurther estimates using additional elements of the cross correlationmatrix.
 6. The method of claim 1 wherein the determining of a spreaddata vector includes: determining a column of a channel correlationmatrix using the estimated channel response; and determining the spreaddata vector using the determined column, the estimated channel response,the received signal and a fourier transform.
 7. The method of claim 1wherein the determining of a spread data vector includes: combining thesignal samples as effective chip rate samples; combining the multiplechip rate estimated channel response as an effective chip rate channelresponse; and determining a spread data vector using the effective chiprate samples, the effective chip rate channel response and a fouriertransform.
 8. The method of claim 1 wherein the estimating of thechannel response is as a channel response matrix for the signal at themultiple of the chip rate and the determining of a spread data vectorincludes: determining a padded version of a spread data vector of a sizecorresponding to the multiple chip rate using a column of the channelresponse matrix, the estimated channel response matrix, the signalsamples and a fourier transform; and estimating the spread data vectorby eliminating elements of the padded version so that the estimatedspread data vector is of a size corresponding to the chip rate.
 9. Themethod of claim 1 where each burst includes a first data field, amidamble and a second data field wherein the estimating data of eachburst comprises estimating the data in each of the data fields of theburst.
 10. A wireless communication apparatus for code division multipleaccess communications comprising: a receiver configured to receive overa shared spectrum a signal in a timeslot that includes a plurality ofsuperimposed bursts that had been transmitted at a chip rate where eachburst includes data associated with a respective spreading code; asampling device configured to sample the signal at a multiple of thechip rate to produce signal samples; channel response estimationcircuitry configured to estimate a channel response for the signal atthe multiple of the chip rate; spread data vector determinationcircuitry configured to determine a spread data vector using thecombined signal samples and the estimated channel response; and datasignal estimation circuitry configured to estimate data of each of thebursts using the spread data vector and the respective spreading codes.11. The communication apparatus of claim 10 wherein the spread datavector determination circuitry is configured to determine a spread datavector by determining a first element of a spread data vector using thesignal samples and the estimated channel response and by using a factorfrom the first element determination to determine remaining elements ofthe spread data vector.
 12. The communication apparatus of claim 10wherein the data signal estimation circuitry is configured to estimatedata by despreading the spread data vector.
 13. The communicationapparatus of claim 10 wherein the spread data vector determinationcircuitry is configured to determine a cross correlation matrix usingthe estimated channel response, to select a subblock of the crosscorrelation matrix, to determine a Cholesky factor for the subblock, toextend the Cholesky factor and to determine the spread data vector usingthe extended Cholesky factor, a version of the channel response and thesignal samples.
 14. The communication apparatus of claim 10 wherein thespread data vector determination circuitry is configured to determine across correlation matrix using the estimated channel response and todetermine the spread data vector using order recursions by determining afirst spread data estimate using an element from the cross correlationmatrix and recursively determining further estimates using additionalelements of the cross correlation matrix.
 15. The communicationapparatus of claim 10 wherein the spread data vector determinationcircuitry is configured to determine a column of a channel correlationmatrix using the estimated channel response and to determine the spreaddata vector using the determined column, the estimated channel response,the received signal and a fourier transform.
 16. The communicationapparatus of claim 10 wherein the spread data vector determinationcircuitry is configured to combine the signal samples as effective chiprate samples, to combine the multiple chip rate estimated channelresponse as an effective chip rate channel response, and to determine aspread data vector using the effective chip rate samples, the effectivechip rate channel response and a fourier transform.
 17. Thecommunication apparatus of claim 10 wherein: the channel responseestimation circuitry is configured to estimate the channel response as achannel response matrix for the combined signal at the multiple of thechip rate and the spread data vector determination circuitry isconfigured to determine a padded version of a spread data vector of asize corresponding to the multiple chip rate using a column of thechannel response matrix, the estimated channel response matrix, thesignal samples and a fourier transform, and to estimate the spread datavector by eliminating elements of the padded version so that theestimated spread data vector is of a size corresponding to the chiprate.
 18. The communication apparatus of claim 10 where each burstincludes a first data field, a midamble and a second data field whereinthe data signal estimation circuitry is configured to estimate data ofthe data fields of each of the bursts.
 19. The communication apparatusof claim 10 configured as a base station for a third generationpartnership project (3GPP) universal terrestrial radio access (UTRA)system.
 20. The communication apparatus of claim 10 configured as a userequipment for a third generation partnership project (3GPP) universalterrestrial radio access (UTRA) system.